package com.tjec.project.businessWorkbench.dto;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import com.fasterxml.jackson.annotation.JsonFormat;

import io.swagger.annotations.ApiModelProperty;

import java.util.Date;

/**
 * 业务一览对象 bms_business
 * 
 * @author pangyongfeng
 * @date 2020-04-20
 */
public class BmsBusinessSketchDto
{

	/** 任务数量，总数 */
    @ApiModelProperty(value = "任务数量，总数")
    private Integer taskTotalCounts;
    
    /** 已完成任务数量 */
    @ApiModelProperty(value = "已完成任务数量")
    private Integer completeTaskCounts;
    
    /** 未完成任务数量 */
    @ApiModelProperty(value = "未完成任务数量")
    private Integer noCompleteTaskCounts;
    
    /** 已收资文件数量 */
    @ApiModelProperty(value = "已收资文件数量")
    private Integer pickupFileCounts;
    
    /** 未收资文件数量 */
    @ApiModelProperty(value = "未收资文件数量")
    private Integer noPickupFileCounts;
    
    /** 项目文档数量 */
    @ApiModelProperty(value = "项目文档数量")
    private Integer projectFileCounts;
    
    /** 成果文件流程，已办结数量 */
    @ApiModelProperty(value = "成果文件流程，已办结数量 ")
    private Integer completeWorkflowCounts;
    
    /** 成果文件流程，办理中数量  */
    @ApiModelProperty(value = "成果文件流程，办理中数量 ")
    private Integer dealWorkflowCounts;
	
	/** 归档状态（0未归档，1已归档） */
    @ApiModelProperty(value = "电子归档状态")
    private String archiveStatus;
    
    @ApiModelProperty(value = "书面归档状态")
    private String writtenArchiveStatus;
    
    /** 项目名称 */
    @ApiModelProperty(value = "项目名称")
    private String projectName;
    
    /** 业务名称 */
    @ApiModelProperty(value = "业务名称")
    private String name;
    
    /** 业务编号 */
    @ApiModelProperty(value = "业务编号")
    private String sectionNumber;
    
    /** 项目经理 */
    @ApiModelProperty(value = "业务类别")
    private String menuName;
    
    /** 项目负责人 */
    @ApiModelProperty(value = "项目负责人")
    private String projectLeader;
    
    /** 项目经理 */
    @ApiModelProperty(value = "项目经理")
    private String projectManager;
    
    /** 项目经理 */
    @ApiModelProperty(value = "项目成员")
    private String projectMember;
    
    /** 招标组组长 */
    @ApiModelProperty(value = "招标组组长")
    private String tenderLeader;

    /** 招标组组员，多个成员用英文分号";"分隔 */
    @ApiModelProperty(value = "招标组组员，多个成员用英文分号;分隔")
    private String tenderMember;
    
    /** 开始时间 */
    @ApiModelProperty(value = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date businessStartTime;

    /** 完成时间 */
    @ApiModelProperty(value = "完成时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date businessEndTime;

	/** 业务状态（从基础数据获取） */
    @ApiModelProperty(value = "业务状态")
    private String status;

    /** 状态说明 */
    @ApiModelProperty(value = "状态说明")
    private String statusRemark;

    private String agencyNo;
    private String sectionName;
    private String agencyStampTime;

    public String getAgencyNo() {
        return agencyNo;
    }

    public void setAgencyNo(String agencyNo) {
        this.agencyNo = agencyNo;
    }

    public String getSectionName() {
        return sectionName;
    }

    public void setSectionName(String sectionName) {
        this.sectionName = sectionName;
    }

    public String getAgencyStampTime() {
        return agencyStampTime;
    }

    public void setAgencyStampTime(String agencyStampTime) {
        this.agencyStampTime = agencyStampTime;
    }

    public String getMenuName() {
		return menuName;
	}

	public void setMenuName(String menuName) {
		this.menuName = menuName;
	}

	public String getProjectLeader() {
		return projectLeader;
	}

	public void setProjectLeader(String projectLeader) {
		this.projectLeader = projectLeader;
	}

	public String getProjectManager() {
		return projectManager;
	}

	public void setProjectManager(String projectManager) {
		this.projectManager = projectManager;
	}
	
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setStatusRemark(String statusRemark) 
    {
        this.statusRemark = statusRemark;
    }

    public String getStatusRemark() 
    {
        return statusRemark;
    }
    
    public void setArchiveStatus(String archiveStatus) 
    {
        this.archiveStatus = archiveStatus;
    }

    public String getArchiveStatus() 
    {
        return archiveStatus;
    }
    public void setTenderLeader(String tenderLeader) 
    {
        this.tenderLeader = tenderLeader;
    }

    public String getTenderLeader() 
    {
        return tenderLeader;
    }
    public void setTenderMember(String tenderMember) 
    {
        this.tenderMember = tenderMember;
    }

    public String getTenderMember() 
    {
        return tenderMember;
    }
    public void setSectionNumber(String sectionNumber) 
    {
        this.sectionNumber = sectionNumber;
    }

    public String getSectionNumber() 
    {
        return sectionNumber;
    }
   
    public void setBusinessStartTime(Date businessStartTime) 
    {
        this.businessStartTime = businessStartTime;
    }

    public Date getBusinessStartTime() 
    {
        return businessStartTime;
    }
    public void setBusinessEndTime(Date businessEndTime) 
    {
        this.businessEndTime = businessEndTime;
    }

    public Date getBusinessEndTime() 
    {
        return businessEndTime;
    }
    
    public String getProjectMember() {
		return projectMember;
	}

	public void setProjectMember(String projectMember) {
		this.projectMember = projectMember;
	}

	public Integer getTaskTotalCounts() {
		return taskTotalCounts;
	}

	public void setTaskTotalCounts(Integer taskTotalCounts) {
		this.taskTotalCounts = taskTotalCounts;
	}

	public Integer getCompleteTaskCounts() {
		return completeTaskCounts;
	}

	public void setCompleteTaskCounts(Integer completeTaskCounts) {
		this.completeTaskCounts = completeTaskCounts;
	}

	public Integer getNoCompleteTaskCounts() {
		return noCompleteTaskCounts;
	}

	public void setNoCompleteTaskCounts(Integer noCompleteTaskCounts) {
		this.noCompleteTaskCounts = noCompleteTaskCounts;
	}

	public Integer getPickupFileCounts() {
		return pickupFileCounts;
	}

	public void setPickupFileCounts(Integer pickupFileCounts) {
		this.pickupFileCounts = pickupFileCounts;
	}

	public Integer getNoPickupFileCounts() {
		return noPickupFileCounts;
	}

	public void setNoPickupFileCounts(Integer noPickupFileCounts) {
		this.noPickupFileCounts = noPickupFileCounts;
	}

	public Integer getProjectFileCounts() {
		return projectFileCounts;
	}

	public void setProjectFileCounts(Integer projectFileCounts) {
		this.projectFileCounts = projectFileCounts;
	}

	public Integer getCompleteWorkflowCounts() {
		return completeWorkflowCounts;
	}

	public void setCompleteWorkflowCounts(Integer completeWorkflowCounts) {
		this.completeWorkflowCounts = completeWorkflowCounts;
	}

	public Integer getDealWorkflowCounts() {
		return dealWorkflowCounts;
	}

	public void setDealWorkflowCounts(Integer dealWorkflowCounts) {
		this.dealWorkflowCounts = dealWorkflowCounts;
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}
	
	public String getWrittenArchiveStatus() {
		return writtenArchiveStatus;
	}

	public void setWrittenArchiveStatus(String writtenArchiveStatus) {
		this.writtenArchiveStatus = writtenArchiveStatus;
	}

	@Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("name", getName())
            .append("status", getStatus())
            .append("statusRemark", getStatusRemark())
            .append("archiveStatus", getArchiveStatus())
            .append("tenderLeader", getTenderLeader())
            .append("tenderMember", getTenderMember())
            .append("sectionNumber", getSectionNumber())
            .append("projectName", getProjectName())
            .append("menuName", getMenuName())
            .append("projectLeader", getProjectLeader())
            .append("projectManager", getProjectManager())
            .append("projectMember", getProjectMember())
            .append("businessStartTime", getBusinessStartTime())
            .append("businessEndTime", getBusinessEndTime())
            .append("taskTotalCounts", getTaskTotalCounts())
            .append("completeTaskCounts", getCompleteTaskCounts())
            .append("noCompleteTaskCounts", getNoCompleteTaskCounts())
            .append("pickupFileCounts", getPickupFileCounts())
            .append("noPickupFileCounts", getNoPickupFileCounts())
            .append("projectFileCounts", getProjectFileCounts())
            .append("completeWorkflowCounts", getCompleteWorkflowCounts())
            .append("dealWorkflowCounts", getDealWorkflowCounts())
            .append("writtenArchiveStatus",getWrittenArchiveStatus())
            .toString();
    }
}
